package com.mingqijia.gassafety.shared.enums;

import lombok.Getter;
import lombok.RequiredArgsConstructor;
import org.springframework.util.CollectionUtils;

import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;

/**
 * 团员类型
 * @author Damon S.
 * @version v1.0.1
 * @date 2019年11月22日 15:34
 */
@Getter
@RequiredArgsConstructor
public enum ResourceType {
    /**资源类型，0NA，1菜单，2按钮，3数据 */
    NA(0),
    MENU(1),
    FUNC(2),
    DATA(3);

    private final int code;

    public static ResourceType parse(Integer code) {
        List<ResourceType> filteredStates = Arrays.stream(ResourceType.values())
                .filter(state -> Objects.equals(state.getCode(), code))
                .collect(Collectors.toList());
        return CollectionUtils.isEmpty(filteredStates) ? NA : filteredStates.get(0);
    }
}
